net: ignore UV_EALREADY in tryReadStart#64530
Conversation
|
Review requested:
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #64530 +/- ##
==========================================
+ Coverage 90.21% 90.24% +0.02%
==========================================
Files 739 739
Lines 241650 241699 +49
Branches 45542 45544 +2
==========================================
+ Hits 218013 218118 +105
+ Misses 15155 15109 -46
+ Partials 8482 8472 -10
🚀 New features to boost your workflow:
|
Signed-off-by: harjoth <harjoth.khara@gmail.com>
51e7fce to
09c630a
Compare
|
The repro in that issue requires manually patching socket handle internals. Is this actually reachable in practice? In theory I think we already check for Notably there are zero reports of Node issues that mention |
tryReadStart()treated every non-zeroreadStart()result as fatal. Thatincluded
UV_EALREADY, which means the handle is already reading and noadditional action is required.
Ignore
UV_EALREADYwhile preserving the existing socket destruction path forall other read-start errors. Add a loopback regression test that forces this
return value and verifies that the socket remains usable.
Fixes: #62400
Tests:
make -j8tools/test.py test/parallel/test-net-read-start-ealready.jstools/test.py test/parallel/test-net-*.jsmake lint-jsAI assistance: OpenAI Codex assisted with implementation and validation. Local
Claude and Codex review passes reported no actionable findings.